package com.bxji.spring.ms.provider.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

/**
 * 集成 sprig config 配置中心客户端口 <br/>
 * 当有请求/fresh节点的时，会重新请求一次 ConfigServer 服务端，去拉读取最新的配置 <br/>
 * 
 * 请求/fresh需要有几点要求： <br/>
 * 1.加actuator的依赖 <br/>
 * 2.SpringCloud 1.5以上需要设置 management.security.enabled=false <br/>
 * 这个Controller的作用是查看from这个key的值
 */
@RestController
@RefreshScope // 开启配置文件更新功能
@RequestMapping("api")
public class TestConfigController {

    @Value("${from}")
    private String fromValue;

    /**
     * @return 会返回配置文件中的最新 值
     */
    @GetMapping("/from")
    @ResponseBody
    public String returnFormValue() {
        return fromValue;
    }
}